10 תשובות
מאוד. השאלה מה הצרכים שלך.
זה עדיין עניין של תיבנות.. אישית אני כיום משתמש ב-Yii וכותב את התבניות ברמת קוד בלבד.. בלי שום תבנית. אבל יצא להרים כמה וכמה אתרים גדולים עם ה-Smarty ובאמת הוא כלי מאוד חזק וטוב.
אני גם משתמש בYii, אבל לפני שהשתמשתי בyii השתמשתי בSmarty וכתבתי על זה מדריך...
בכל מקרה אם הוא נוח לך תשתמש בו :)
והוא מתאים לכל דבר
אפשר להשתמש בו גם עם YII וגם עם וורדפרס.. אישית אני חושב שזה כבר מיותר.
יש מנועים יותר טובים? או שעדיף להשתמש בפריימורקים?
כן אבל בפריימוורק יש גם יש תיבנות, מה ההבדל?
יותר נכון - יש mvc ויש templates. אפשר לשלב אותם. אפילו רצוי. ולאמר שטמפלייטים זה mvc - שגוי. יש כאן מדריך על mvc והוא שגוי כי המחבר כתב על טמפלייטים. וכן, smarty חזק מאוד.
למה רצוי בדיוק?
אני חושב שזה כבר סתם עוד LIBS שנטענים במערכת.
כיום לא יוצא לי לתת למעצב להתחיל לעצב לי את האתר, אלא אני צריך להתאים את הקידוד כבר לאתר.. ככה שלהתחיל לכתוב בתיבנות יהיה מאוד מיותר.
רצוי, כי צריך לשמור על עקרון הפרדת הקוד. נכון שאם יש כבר mvc, אז זה די טוב, אבל עדיין, אין ב-mvc הפרדה מלאה בין הקוד לעיצוב. יש שם הפרדה לוגית בין שכבות שונות, אבל לא בין שכבות אלה.
ב-mvc אתה מפריד את כל האובייקטים (דפים בעצם) למודלים, והתצוגה עוברת טיפול ב-view. קונטרולר משחק את תפקיד ה"דבק המחבר" בין ה-view למודל. כל הbusiness logic אמור להיות במודל. אך בסופו של דבר, ה-view לא באמת מפריד את הקוד מהעיצוב - הוא רק מעביר נתונים מבלי לדעת שום דבר על המודל. לכן מערכת טמפלייטים לא תזיק.
הכי נכון יהיה ב-View לטפל בכל מה שקשור לטמפלייטינג.
ואני לא יודע מה הכוונה ל"תבניות". אם "תבניות" כאן במובן של placeholderים שעוברים פארסינג (כמו למשל {user}) אז זה להיפך יותר קל לטיפול - המעצב לא יודע כלום לגבי הקוד והוא גם לא אמור לדעת. הוא מעצב את האתר ושם במקומות מתאימים את הפלייסהולדרים.